package level02.one;

import java.io.FileOutputStream;
import java.io.IOException;
import java.nio.charset.StandardCharsets;
import java.util.Scanner;

/**
 * 从控制台循环接收用户录入的学生信息，输入格式为：学号-学生名字
 * 将学生信息保存到 C 盘下面的 stu.txt 文件中，一个学生信息占据一行数据。
 * 当用户输入 end 时停止输入。
 * * 要求使用字节输出流写出数据
 */
public class Test {
    public static void main(String[] args) throws IOException {
        Scanner scanner = new Scanner(System.in);
        while (true) {
            System.out.println("请输入学生信息：输入格式为：学号-学生名字（输入end结束输出）");
            String student = scanner.nextLine();
            if(student.equals("end")){
                break;
            }
            //将String类型转为byte[]数组，因为write方法不接受String类型的参数
            byte[] studentBytes = student.getBytes(StandardCharsets.UTF_8);
            //public FileOutputStream(String name)： 创建文件输出流以指定的名称写入文件。
            FileOutputStream fileOutputStream = new FileOutputStream("stu.txt",true);
            //将学生信息写入文件
            fileOutputStream.write(studentBytes);
            //换行
            fileOutputStream.write("\r\n".getBytes(StandardCharsets.UTF_8));
            //当用户输入 end 时停止输入
            fileOutputStream.flush();
        }
        scanner.close();
    }
}
